package cn.wolfcode.car.business.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Getter;
import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 * 预约
 */
@Setter
@Getter
@TableName(value = "bus_appointment")
public class Appointment {
    private static final long serialVersionUID = 1L;
    public static final Integer STATUS_APPOINTMENT = 0;//预约中
    public static final Integer STATUS_ARRIVAL = 1;//已到店
    public static final Integer STATUS_CANCEL = 2;//用户取消
    public static final Integer STATUS_OVERTIME = 3;//超时取消
    public static final Integer STATUS_SETTLE  = 4;//已结算
    private Long id;
    private String customerName;                    //客户姓名
    private String customerPhone;                   //客户联系方式
    /**
     * @JsonFormat: 后台在返回Json的数据的时候 针对日期格式是如何解析 如果没贴 日期对象解析成毫秒值
     * timezone = "GMT+8"
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm",timezone = "GMT+8")

    /**
     * @JsonFormat: 前台注入日期的时候需要指定的日期的格式  没贴会报400错误
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")

    private Date appointmentTime;                   //预约时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm" , timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    private Date actualArrivalTime;                 //实际到店时间
    private String licensePlate;                    //车牌号码
    private String carSeries;                       //汽车类型
    private Integer serviceType;                    //客服务类型【维修0/保养1】
    private Date createTime;                        //创建时间
    private String info;                            //备注信息
    private Integer status = STATUS_APPOINTMENT;    //状态【预约中0/已到店1/用户取消2/超时取消3】
}